int is_white(int ch);

void deblank(char* string) {
    char* src = string;
    char* dst = string++;
    int ch;

    while((ch = *src++) != '\0') {
        if(is_white(ch)) {
            if(src == string || !is_white(dst[-1]))
                *dst++ = ' ';
        } else
            *dst++ = ch;
    }
    *dst = '\0';
}

int is_white(int ch) {
    return ch == ' ' || ch == '\t' || ch == '\v' || ch == '\f' || ch == '\n' || ch == '\r';
}